//
//  CHCameraSession.h
//  SCCAProofSdk
//
//  Created by cyptt on 2022/3/11.
/*
 相机基本实现步骤
 捕捉会话——AVCaptureSession
 捕捉输入——AVCaptureDeviceInput
 捕捉预览——AVCaptureVideoPreviewLayer/OpenGL ES
 捕捉连接——AVCaptureConnection
 拍照——AVCaptureStillImageOutput
 音频——AVCaptureAudioDataOutput
 视频——AVCaptureVideoDataOutput
 生成视频文件——AVAssetWriter、AVAssetWriterInput
 写入相册——ALAssetsLibrary、PHPhotoLibrary
 AVCaptureMovieFileOutput
 将视频写入文件，最简单的选择就是使用 AVCaptureMovieFileOutput 对象。把它作为输出添加到 capture session 中，就可以将视频和音频写入 QuickTime 文件，这只需很少的配置。
 
 NSString *const AVCaptureSessionPresetPhoto;
 NSString *const AVCaptureSessionPresetHigh;
 NSString *const AVCaptureSessionPresetMedium;
 NSString *const AVCaptureSessionPresetLow;
 NSString *const AVCaptureSessionPreset352x288;
 NSString *const AVCaptureSessionPreset640x480;
 NSString *const AVCaptureSessionPreset1280x720;
 NSString *const AVCaptureSessionPreset1920x1080;
 NSString *const AVCaptureSessionPresetiFrame960x540;
 NSString *const AVCaptureSessionPresetiFrame1280x720;
 NSString *const AVCaptureSessionPresetInputPriority;
 
 第一个代表高像素图片输出；接下来三种为相对预设(low, medium, high)，这些预设的编码配置会因设备不同而不同，如果选择high，那么你选定的相机会提供给你该设备所能支持的最高画质；再后面就是特定分辨率的预设(352x288 VGA, 1920x1080 VGA, 1280x720 VGA, 640x480 VGA, 960x540 iFrame, 1280x720 iFrame)；最后一个代表 capture session 不去控制音频与视频输出设置，而是通过已连接的捕获设备的 activeFormat 来反过来控制 capture session 的输出质量等级


 */

#import <Foundation/Foundation.h>
#import <AVFoundation/AVFoundation.h>
#import "CHBaseRecord.h"
NS_ASSUME_NONNULL_BEGIN

@interface CHRecordData : CHBaseRecord

-(AVCaptureSession *)getSession;
@property (atomic, strong) NSString *videoPath;//视频路径

-(void)start;
-(void)stop;
@end

NS_ASSUME_NONNULL_END
